﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BT_DoHoa_Nhom13.DiagramFactorys
{
    public abstract class MyDiagramFactory
    {
        protected String name;
        protected List<String> nameOfShapes;

        public abstract MyShape GetStartShape();

        public abstract MyShape GetEndShape();

        public abstract MyShape GetProcessShape();

        public abstract MyShape GetConditionShape();

        public abstract MyShape GetInputShape();

        public abstract MyShape GetOutputShape();

        public abstract MyShape GetArrowShape();

        public String GetName()
        {
            return name;
        }

        public void InitialListNameOfShape()
        {
            nameOfShapes = new List<string>();
            nameOfShapes.Add(GetStartShape().GetName());
            nameOfShapes.Add(GetInputShape().GetName());
            nameOfShapes.Add(GetOutputShape().GetName());
            nameOfShapes.Add(GetConditionShape().GetName());
            nameOfShapes.Add(GetProcessShape().GetName());
            nameOfShapes.Add(GetArrowShape().GetName());
            nameOfShapes.Add(GetEndShape().GetName());
        }

        public List<String> GetListNameShape()
        {
            return nameOfShapes;
        }
    }
}
